package org.tea.inventory.integralRule.template;

import org.tea.inventory.integralRule.IntegralTo;

/**
 * @author hanzy
 * @description 积分奖励模板
 * @date 2023年04月26日 9:41
 */
public abstract class AbstractIntegral {
    public abstract void obtain(IntegralTo integralTo);

    public abstract void add(IntegralTo integralTo);

    public abstract void senMsg(IntegralTo integralTo);

    //模板
    public final void start(IntegralTo integralTo) {

        //获得积分
        this.obtain(integralTo);
        //奖励积分
        this.add(integralTo);
        if (integralTo.getIntegral() != 0) {
            //消息发送
            this.senMsg(integralTo);
        }
    }

}
